package com.example.design.行为型设计模式.观察者模式;

// 客户端代码
public class ObserverMain {
    public static void main(String[] args) {
        WeatherData weatherData = new WeatherData();

        PhoneDisplay phoneDisplay = new PhoneDisplay(weatherData);
        WebDisplay webDisplay = new WebDisplay(weatherData);

        weatherData.setMeasurements(25.0f, 65.0f, 1013.1f);
        weatherData.setMeasurements(30.0f, 70.0f, 1012.5f);
    }
}

// 观察者模式主要用于一种对象状态变化时，自动通知和更新其他依赖的对象。在现实生活中，一个常见的例子是天气监测系统。
// 当天气发生变化时，多个显示器（如手机应用、网页、气象站）会获取新的数据并进行更新。
// 在这个例子中，当天气数据更新时，所有注册的观察者（如手机显示和网页显示）都会被自动通知并更新他们的显示。这展示了观察者模式在现实生活中的实际应用，以及如何有效地管理对象之间的依赖关系。